ML }  X c0C)HCCH Mhhݩh `eCDiCD`  RyHP   * 1H0芢@) Y0.Ș` i #(PMR\ \b Pgi 0  % @ / ՠ`d   0DDԝLwN@  )?HI Y0`HIJH) * J j * hJJJ )HJ h i     } YS S0 i`΢ϣ߳H J3xj2h} 1 |9 ӭ45(420 * (0241өX.`  R *i)Lvw  ~*P}E 5 LN(G E  r s k rsrL ( E LO(0d( L iE0O +)$IC  H S8 }q p h   j 8no CDLQ CFl M  LO Ri)Llk2'")*F }$F$F$F$F$ 5 )ШF/Șl]kpqС,LQ/A! Ti)Zlk@ ܬ/i)(")")k }$F$F$F 5$/L /lF@jj(LNkle$$%8(k()` R 8 ELO Ri)^>jf | NrC s } ) vw5g   enfo Glvw LQ@iLm>j FL ~Jjjjii p qEh }jlrs`LQ:$ȱ$@+[_#{ 8  Խut! ai 8   E I   ] C } H h    ˰ 8  N   Lm E  ,  [ `LQ ,/ 8 ~/  Ơ? ѩ}/  [ /Lj0?MoLn FjMqLp NklLOLQnLoMlNLO R"(+}ըHH`Q R!!  % !   / .   FȑF! /GF \H"+0+* }! F tLQnm: J~nTF1F  *n+)5! n (, n)1JJJn(n*o} I ,0  ci a oF? @ , 8,0 ʩ0H Eh   i}  D ]DmmFLQvtu`*&!*@h ] 0 ^0` c 0l$$%}()()%*&J%H,@hH hH@,h $% 8i8$(%)0hhH ]h`() c 0H c 0 h}`hhh&JJ ](ll  LQ0  /qnoHH 9 9 H H  I9  9 } Nd EH  Q8 o n  FnoL HII/ Ih8`h`Lnon`no`u F }E VEhLO/luF l0BF/lɜɛ׽hE N  b VFL FREE SECTORS C} H) *Fh ):FȽ F FC IH' 0 d  i:Fȩ/F.l`CD/08HDIC}IHȰ/F`ȱ$>.+.i ȱ$:刄H !A \ Hȱ$*?ȝ 2. ? [_{ ,0}-:) 0$:>WI  IТ,LQH  0hLd ~ t u`C ?( 0(C.` E } R =! .ti S0N EE D XC )0')AY  )ע ? 0E088FG \o}n  (HhLcL3 iJ i Lqp 0=rspnqopqlk`jZj0  j FL`H}FhȑFȽlFi0 h FFLFpvqwgneofLF pq7  G0i 0 FJJh1FqȱFpȱFk`B!}08`hEE D 8. =D}tui( TʩL`b!)    cȌaȌd b`aab}H8 hdaHcd8 cH hHH  \h hc` =Hh I8ih( t  ( t(!` L\}CJfCJfCJfCDfC` a  HII  INdh  `h  `n)8jHniPoijIjFIjFIjh` a } I 38  8H0 I  ' H LQ8j Y  8j NdY  &I &I &IHeH.p!}Iiq  `!.莿 2Jjj }.m Ȉ!m FG` ɩLQ z "} e Hi04 \ Ȍ  8 i h !`I0 `C Y8.`DOS SYS#} I  ` ~ݩ.C/`ba.m۩mѤC9 `C L] H  ,- '0 l $}, BLVDE`D1:AUTORUN.SYS8hhJ ȱHȱIȱBȱDȱEeeHHLV)  %}1*  ,,p-  0 I &  '0   Lw)l, 0  I&LD1:MEM.SAV&}E:D1:DUP.SYSYxCA#ءX$Q  HH).}  hyhyB q L> Lm JJ  Ln*` dB%'/}8  H H` 1 { LL   !L     Hh SY?  q  1L0}  !? S   q 1 L   Ll  Lg E`L   !L)  q 1L1}) `L0AM݊L݉ ML  N݆LLLNLMLHG!@2}1F GȱGLLEEȩÑEȑEEȑE Ed E7EȩE  q3} L !,0,0SGɛ L 1 !L EHEh W G gLLSROTCES EERF 4} G) *Gȩ GȽG GȌd q q G`  8   0G  `D5}CEDC0X:Ȣ Y ȱC* ? 0.. , 0%n ?A[ 0 : L`L  `, 0`Y6}`piH n0)բY? 08`0 7}  0$L GGȽG L `8L`L8}8`  05G)݁,G)ȱGȱGHh0})Hh` B! 8`8iiiLE`9}E8FEh( l0`ɃLL L8^~jj8jHi hEEEiEȱEiE` dTE:} H8EEȱEEȩEh J E8   . m  i`LI!)E1FR;}1LJ舩9GIH`LJJ`HGHh l`<} S gL   8 rii `дCDCG W  =}C  Lq` X٨`DOS SYS IIIIIIIIIIIIIIIC`0 ߩ0}}`>} HE |||DDOS DOSDOS SYS }?}}@}CDOS SYSBl+FIREBUG3ASMB G8CHAR BASB G8DEMO LSTB#G8CHAR ASMBcDRKHORSEBASA} 0`BDELV !B B}`LVUQ   ]   TU J ]L!T  #      TU C} L ? .  t`GBJ V~DEHI B V0dVD}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEhE}DEL8HI   0 HI,0 0  9 .G VLOF},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHIG} V0 0`B;DELV䌚 !B y`@ʆ v s? F0Ξ05: [ BDEHIH} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO I}STILL RUN DOS B;DE J V (` 9 V⪍ ઍ  -J}LLu DEHILV 9 .l 9 .l  `` s$B VBHK}I|DE V BLV nB,DE J V* \*` B V BLVDEHI BLVLL}1u H232435; 1 ;  hh@2 e1i1LHҍ 00) 08 109hh@ Ҡ2eM}1i1232435ޥ<<8}Q4GX; ************************HX; * FIREBUG DRAW ROUTINE *IX; * BY Kyle Peacock *JX; ************************KO}X;LMX;NDRAWOQMAXBUGS;;# OF CHARS TOPP?COUNT;;MODIFY.Q ?DRAW1R$?COUNT;;GET COUNTER.S%TYPE9;;CHARACTER P}TYPE.TQPHASE9;;TYPE PHASE.U R?INDEX8;;PHASE EXCEEDED?VD?DRAW3;;NO! BRANCH!W ?DRAW2XQ?INDEX8;;RESET WITHYPPQ}HASE9;;PROPER PHASE.Z ?DRAW3[R?INDEX8;;CORRECT PHASE?\D?DRAW2;;NO! BRANCH!]T?;;PHASE TIMES 2.^?;;MOVE A TO Y._QR}?OFFSET8;;ADDR OF CHAR`PDRWLO;;DATA (LO BYTE)aQ?OFFSET8;;HI BYTE OFbPDRWLO;;CHAR DATA.cQ?COUNT;;GET COUNTES}R.dT?;;MULTIPLY BY 2.e?;;MOVE A TO Y.fQ?PLAYBASE8;;DESTINATIONgPPLLO;;LO BYTEhQ?PLAYBASE8;;&iPPLLO;;HI T}BYTE.j%>;;MOVE 16 BYTES.k ?DRAW4lQ@DRWLO7;;GET DATA.mP@PLLO7;;SAVE DATA.n1;;NEXT BYTE.oI?DRAW4;;ALL DONE?pU}"?COUNT;;NEXT CHARACTER.qI?DRAW1;;ALL DONE?r"?PHTIME;;DEC TIMER.sI?DRAW7;;IF >0 BRANCH!tQMOVETIME;;RESET PHASEuV}P?PHTIME;;TIMER.v$PLAYNO;;PLAYER NUMBER.wQSTICK09;;GET JOYSTICK.xR>;;CENTERED?yF?DRAW7;;YES! BRANCH!z#PHASEW};;INC FIREBUG PHASE.{ ?DRAW7|"?PHTIME;;DEC TIMER.}I?DRAW9;;IF >0 BRANCH.~QPHASETIME;;RESET TIMER.P?PHTIMEX};;SAVE IT.$MAXBUGS;;# OF CHARs ?DRAW8#PHASE9;;UPDATE PHASES.0;;HANDLE NEXT.H?DRAW8;;ALL DONE? ?DRAW9Y}:;;ZOOOOOOM!!! ?COUNT ;;COUNTER ?PHTIME =;;TIMERSX;?INDEX;CHARACTER INDEX === = =Z}=%=(X; ?PLAYBASE GAMESET0  GAMESET@  GAMESETP  GAMESET`  GAMESET X; ?OFFSE[}T FIREBUGUP1 FIREBUGUP2 FIREBUGUP3 FIREBUGUP2 FIREBUGRIGHT1 FIREBUGRIGHT2 FIREBUGRIGHT3 FIREB\}UGRIGHT2 FIREBUGLEFT1 FIREBUGLEFT2 FIREBUGLEFT3 FIREBUGLEFT2 FIREBUGDOWN1 FIREBUGDOWN2 FIREBUGDOW]}N3 FIREBUGDOWN2 ?BUG11 ?BUG12 ?BUG13 ?BUG14 ?BUG15 ?BUG21 ?BUG22 ?BUG23 ?BUG24 ?B^}UG25 ?BUG26 ?BUG25 ?BUG24 ?BUG23 ?BUG22 ?EGG1 ?EGG2 ?EGG3 ?EGG4 ?EGG3 ?EGG2 B_}ULLET1 BULLET2 BULLET3FIREBUGUP1  == ==5==5= 0==`==\==\=FIREBUGUP2 == =`}== == ==`==_==_=FIREBUGUP3  == ==5==5= 0==`==\==\=FIREBUGRIGHTa}1  =3=====3=  ==#===#==FIREBUGRIGHT2 3=3=====3=3 == === ==b}FIREBUGRIGHT3 =3=====3= ==#===#==FIREBUGLEFT1 ===&=&=== 0==c}d=f=f=d==0FIREBUGLEFT2 ======= ==d=f=f=d==FIREBUGLEFT3 ===&=&==d}= 3==d=f=f=d==3FIREBUGDOWN1 =5==5== ==  =\==\==`==0FIREBUGDOWN2 =e}= === == =_==_==`==FIREBUGDOWN3 =5==5== ==  =\==\==`==0 ?BUGf}11 0= == = =2== ===`=`==0=  ?BUG12 === = ==0=0  = ==`=`=== ?g}BUG13 === = == =  0=0==`=`=== ?BUG14 ===9==== ===c=l===h} ?BUG15  === =9=== ===l=`===0 ?BUG21 =======  = = =@=@===i} ?BUG22 =====(== = =(=@=@=== ?BUG23 ==== === ===`=@==j}= ?BUG24 === ==== ===@=`=== ?BUG25  ==(=====  ===@=@=k}(= = ?BUG26   =======  ===@=@= = = ?EGG1  =======  ====l}=== ?EGG2  ===(=(===  ===(=(=== ?EGG3  =2=====2=  === =m} === ?EGG4  =======  ======= BULLET1  =======  ===n}==== BULLET2  =======  ==@===@== BULLET3  ===0=0===  =o}== = === X; !X; *************************** !X; * FIREBUG CHARACTER USAGE * !X; *************************** p}X; #X; CHAR # REDEFINED CHARACTER X;! X; 0 BLANK" X; 1 BORDER# X; 2 DIRT$ X; q} 3 DIRT% X; 4 DIRT& X; 5 DIRT' $X; 6 & 7 PLAYER'S FIREBUG( X; 8 & 9 ENEMYr} BUG #1) X; 10 & 11 ENEMY BUG #2* X; 12 & 13 BABY FIREBUG+ !X; 14 FIREBUG TRAIL, "X; 15 & 16 Ps}ROXIMITY BOMB- X; 17 EXPLOSION. !X; 18 & 19 FIREBUG SPARK/ !X;20,21,22,23,24 SPARK BARLINE0 X; ***********t}**************1 X; * FIREBUG SPARK HANDLER *2 X; * BY Kyle Peacock *3 X; *************************4 X;5 6 X;7 u}SPARK8  STARTSPARK;;FIRING.9 !MOVESPARK;;MOVING.: STARTSPARK; "FIRETIME;;DEC TIMER.< H?RETURN;;IF <>0 BRANCH!= Q>v};;RESET TIMER.> PFIRETIME;;SAVE IT.? $PLAYNO;;GET PLAYER #.@ QTRIG09;;GET TRIGGER.A H?RETURN;;IF <>0 BRANCH!B QNOBw}ULL9;;FIRED BULLETS.C R>;;IF >=5,D E?RETURN;;BRANCH!E QBULLETLINE ;;CHECK BARF R>;;LINE.G F?RETURN;;IF CHR=24 Bx}RANCH!H $>;;SET UP X.I ?SEARCHJ QBULLDIR9;;THIS BULLETK R>;;ACTIVE?L F?FOUND;;NO! BRANCH!M 0;;YES, CHECK NEXTN y}I?SEARCH;;WORK AREA.O !?RETURN;;NONE AVAILABLE.P ?FOUNDQ #NOBULL;;INC BULLETS FIRED.R QBUGL;;FIREBUG'S LOS PBULLX9z};;ADDRESS.T QBUGL;;FIREBUG'S HIU PBULLY9;;ADDRESS.V QTYPE;;GET FIREBUG'SW PBULLDIR9;;DIRECTION.X Q>;;SET SPARK {}LIFE.Y PBULLTIME9;;SAVE IT.Z Q>;;SET UP FIRING[ PBULLNOISE;;SOUND EFFECT.\ $BULLPNT;;DEC BAR LINE OF] #BULLETLINE9|};;REMAINING^ QBULLETLINE9;;SPARKS._ R>;;[DON'T ALLOW` H?RETURN;;SPARK EJECTIONa QBULLPNT;;IF NO SPARKSb R> ;;ARE O}}N BARc F?RETURN;;LINE.]d "BULLPNT;;DEC POINTER.e ?RETURNf :;;GET OUT!!!g MOVESPARKh $>;;HANDLE ALL.i ?SPARKYj ~}QBULLDIR9;;SPARK DIRECT.k R>;;IS IT $FF?l H?SPARKS;;NO! BRANCH!m !?NEXTBULL;;HANDLE NEXT.n ?SPARKSo QBULLX9;;GET }BULLET LO.p PZLO;;SAVE IT.q QBULLY9;;GET BULLET HI.r PZLO;;SAVE IT.s %>;;CLEAR Y-REG.t Q@ZLO7;;GET CHAR.u R>};;BULLET?v F?BLANK;;YES. BRANCH!w R>;;EXPLOSION?x H?NOBLANK;;YES! BRANCH!y ?BLANKz Q>;;FIREBUG TRAIL.{ P@ZLO7;;}SAVE IT.| 3;;INC POINTER.} P@ZLO7;;SAVE IT.~ ?NOBLANK QBULLDIR9;;SPARK DIRECT. I?REDRAW;;IF >0 BRANCH! Q>;;TUR}N OFF SPARK. PBULLDIR9;;SAVE IT. "NOBULL;;DEC FIRED SPARKS. !?NEXTBULL;;HANDLE NEXT. ?REDRAW ?;;MOVE A TO Y. }QBULLX9;;GET SPARK LO. ,;;CLEAR CARRY. O?LOADD8;;DIRECTION ADD. PZLO;;SAVE IT. QBULLY9;;GET SPARK HI. O?HIADD8};;DIRECTION ADD. PZLO;;SAVE IT. %>;;CLEAR Y-REG. Q@ZLO7;;GET CHARACTER. M>;;CLEAR BIT 7. F?GO;;IF =0 BRAN}CH! R>;;IS IT =14? F?GO;;YES! BRANCH! ?STOP 5;;SAVE CHARACTER. Q>;;BIT 7 ON. PBULLDIR9;;SAVE IT. 7;;REST}ORE CHAR. R>;;BORDER? F?NEXTBULL;;YES! BRANCH! R>;;BOMB? F?NEXTBULL;;YES! BRANCH! R> ;;BABY FIREBUG? F?NE}XTBULL;;YES! BRANCH!  ?POSITION;;SAVE NEW X&Y. Q>;;EXPLOSION. P@ZLO7;;SAVE IT. 3;;INC POINTER. P@ZLO7;;SAVE IT}. Q>;;TURN ON DETO- PBOOMNOISE;;NATION SOUND. H?NEXTBULL;;BRANCH! ?GO Q>;;BULLET. P@ZLO7;;SAVE IT. 3;;I}NC POINTER. ,;;INC CHAR. O> P@ZLO7;;SAVE IT.  ?POSITION;;SAVE NEW X&Y. "BULLTIME9;;DEC LIFETIME. I?NEXTBULL};;IF >0 BRANCH! Q>;;FORCED HALT. H?STOP;;BRANCH! ?NEXTBULL 0;;DEC POINTER. G?RETURN2;;IF <0 BRANCH! !?SPARK}Y;;JUMP ON IT. ?RETURN2 :;;LATER Y'ALL... ?POSITION QZLO;;GET NEW LO. PBULLX9;;SAVE IT. QZLO;;GET NEW HI.} PBULLY9;;SAVE IT. :;;PLEASE LEAVE!!! X; X; DIRECTIONAL ADD ONs X; ?LOADD  === ?HIADD  ===} X; X; ********************* X; * EXPLOSION ROUTINE * X; * BY Tom Hudson * X; ********************* X; E}XPLODQ>;;RESET... PEXPPH;;EXP. PHASE Q>B;;AND START... PEXNOISE;;EXP. SOUND EXPDLPQ>;;SET UP... PEXPCHR;;E}XPLOSION CHAR. QEXPPH;;GET PHASE R> ;;>12? DPH1;;NO, PHASE 1 ;;;ADJUST INDEX... S> ;;FOR PHASE 2 %>;;AND SE}T UP... 'EXPCHR;;ERASE CHARACTER PH1>;;PUT PHASE IN X QELO;;AND ADD... ,;;EXPLOSION... OEADDL9;;ADDRESS... P}ELO2;;OFFSET... QELO;;FOR THE BYTE... OEADDH9;;TO BE... PELO2;;CHANGED! %>;;NOW PUT... QEXPCHR;;EXPLOSI}ON CHAR. P@ELO27;;ONTO DISPLAY 3 P@ELO27  WAIT;;WAIT A LITTLE #EXPPH;;NEXT PHASE QEXPPH;;GET PHASE R>;;A}LL DONE? HEXPDLP;;NO, LOOP BACK! :;;BYE! X; X;TIME DELAY ROUTINE X; WAIT$>;;THIS ROUTINE XLOOP%>;;WASTES} A LITTLE YLOOP1;;TIME SO THE HYLOOP;;EXPLOSIONS 0;;CAN BE SEEN. HXLOOP : X; !X; ***************************} !X; * PROXIMITY BOMB HANDLERS * !X; * BY Tom Hudson * !X; *************************** X; "ARMBOM$BOMBCT;;GE}T # OF BOMBS !ARMLPQARMED9;;GET ARMED FLAG R>;;ARMED YET? HNXTBOM;;YES! QBOMBL9;;GET BOMB... PBLO;;ADDRESS...} QBOMBH9;;AND SAVE IT PBLO %>;;GET CHAR... Q@BLO7;;FROM DISPLAY R>;;IS IT BOMB? FDONARM;;YUP, IT'S OK.} R> ;;IS IT BABY? HSETARM;;NO, ARM IT! Q>;;THIS CORRECTS A PARMED9;;SMALL PROBLEM, HNXTBOM;;DISABLING BOMB }SETARMQ>;;RESTORE... P@BLO7;;BOMB GRAPHIC... Q>;;ON DISPLAY 3 P@BLO7 HARMIT;;SET ARM TIMER DONARM%>;;S}CAN 4 DIRS. ARMSCANQBLO;;ADD... ,;;DIRECTION... ODIRADL8;;OFFSET... PBLO2;;TO BOMB... QBLO;;ADDRESS ODIR}ADH8 PBLO2 'YTEMP;;SAVE Y REG. %>;;GET DESIRED... Q@BLO27;;DIRECTION BYTE R>;;SPARK? FARMIT;;YES, ARM }IT! R>;;FIREBUG?! HNOARM;;NO!" ARMITQ><;;1 SECOND DELAY# PARMED9;;ARM IT!$ NXTBOM0;;NEXT BOMB% IARMLP;;LOOP IF} MORE& GDECBT;;NOW HANDLE TIME' NOARM%YTEMP;;RESTORE Y REG( 1;;NEXT DIRECTION) GNXTBOM;;NO MORE DIRS!* !ARMSCAN;;LO}OP IF MORE+ X;, !X;HANDLE BOMB TIMERS, DETONATE- X;. !DECBT$BOMBCT;;GET # OF BOMBS/ DBLPQARMED9;;IS IT ARMED?0 GNOTA}RM;;NOT ARMED!1 QBOMBL9;;LOAD POINTER...2 PELO;;WITH BOMB'S...3 QBOMBH9;;ADDRESS4 PELO5 %>;;GET THE BYTE...6 Q}@ELO7;;FROM DISPLAY7 HBLOW1;;IT'S OK.8 Q>;;RESTORE IMAGE9 HBLOW2: BLOW1; Q>;;TOGGLE HI BIT< N@ELO7;;TO FLASH B}OMB= BLOW2> P@ELO7;;RE-DRAW BOMB? 3@ ,A O>B P@ELO7C Q>;;SET FUSE...D PAUDF4;;FREQUENCYE Q>;;TURN ON...F P}AUDC4;;FUSE SOUND!G "ARMED9;;DEC TIMERH HNOTARM;;NO EXPLOSION YETI Q>;;TURN OFF...J PAUDC4;;FUSE SOUNDK Q>;;MARK} THE BOMB...L PARMED9;;INACTIVEM &XTEMP;;SAVE X REG.N 'YTEMP;;SAVE Y REG.O  EXPLOD;;BOOM!!!P $XTEMP;;RESTORE XQ %}YTEMP;;RESTORE YR NOTARM0;;NEXT BOMBS IDBLP;;LOOP IF MORET :;;BYE!U X;V X; **********************W X; * BABY FIREBUG }MOVER *X X; * BY Tom Hudson *Y X; **********************Z X;[ !BMOVE$EGGTOT;;GET BABY COUNT\ EGGLP&EGGIX;;SAVE I}NDEX] QEGGACT9;;IS IT ACTIVE?^ HEACTIVE;;YES!_ !NXTEGG;;NO, NEXT BABY.` EACTIVEQEGGL9;;GET...a PHLO;;BABY ADDRESS.}..b QEGGH9;;AND SAVE ITc PHLOd %>;;GET BABY'S...e Q@HLO7;;SCREEN BYTEf R> ;;IS IT OK?g FEGGOK;;YES!h "EGGS;};NO, KILL ONEi GALLDEAD;;ALL DEAD!j Q>;;MARK BABY...k PEGGACT9;;INACTIVEl Q> ;;START EATING...m PEATNOISE;;SOUNDn }!NXTEGG;;DO NEXT ONEo ALLDEAD7;;CLEAR...p 7;;STACK,q !GAMOVR;;GAME OVER!!!r EGGOKQ>;;TRY 4 DIRS.s PETRY;;SAVE IN}DEXt !EGGDLPQRANDOM;;GET RANDOM...u M>;;DIRECTION 0-3v ?;;PUT IN Y REG.w QEGGL9;;GET...x ,;;BABY ADDRESS...y ODIRA}DL8;;AND ADD...z PADL;;DIRECTION...{ QEGGH9;;OFFSET| ODIRADH8} PADL~ %>;;GET CHARACTER Q@ADL7;;FROM SCREEN }FMOVEGG;;IT'S TUNNEL! R>;;BUG TUNNEL? FMOVEGG;;YES! NEDIR"ETRY;;NEXT DIRECTION IEGGDLP;;LOOP IF MORE NXTEG}G0;;NEXT BABY IEGGLP;;LOOP IF MORE :;;ALL DONE! MOVEGGQ>;;ERASE BABY... P@HLO7;;USING CHAR 14 3;;(BUG TRAIL) } P@HLO7 1 Q> ;;DRAW BABY... P@ADL7;;IN NEW... 3;;LOCATION , O> P@ADL7 QADL;;UPDATE BABY'S PEGGL9;;A}DDRESS QADL PEGGH9 !NXTEGG;;AND LOOP! X; X; ************************* X; * SCOREKEEPING ROUTINES * X; * } BY Tom Hudson * X; ************************* X; X;ADD TO SCORE X; ADDSCO%>;;ZERO Y REG. <;;DECIMAL MODE} ,;;CLEAR CARRY $>;;DO 3 DIGITS ASCLPQSCORE9;;GET DIGIT OSCOADD9;;ADD INCREMENT PSCORE9;;SAVE DIGIT 'SCOAD}D9;;CLEAR INCREMENT 0;;NEXT DIGIT IASCLP;;LOOP IF MORE -;;NO MORE DECIMAL X; X;SHOW SCORE X; SHOSCOQ>;;COLO}R 0 PSHCOLR;;SAVE IT $>;;DISPLAY INDEX %>;;DIGIT # SSCOLPQSCORE8;;GET DIGIT  SHOBCD;;SHOW ON SCREEN 2;;NE}XT SCREEN POS 2;;(INC TWICE) 3;;NEXT DIGIT )>;;DONE ALL 3? HSSCOLP;;NO! :;;ALL DONE! X; X;SHOW 2 BCD DIGITS} X; !SHOBCDPSHOBYT;;SAVE BCD BYTE M>;;GET LOW DIGIT LSHCOLR;;ADD COLOR PSCOLIN9;;SHOW IT! QSHOBYT;;GET BC}D BYTE V?;;GET HI DIGIT V? V? V? LSHCOLR;;ADD COLOR PSCOLIN9;;SHOW IT! :;;ALL DONE! X; X;SHOW CURRENT LEV}EL X; SHOLVL%>P;;COLOR 1 'SHCOLR;;SAVE COLOR QBCDLVL;;GET LEVEL # $> ;;PUT IN 11TH BYTE !SHOBCD;;SHOW IT! }X; X;SHOW # OF LIVES X; !SHOLIVQLIVES;;GET # OF LIVES GENDSHO;;<0!! L>;;ADD COLOR 3 PSCOLIN;;SHOW IT! }ENDSHO :;;ALL DONE!S X; !SHOLIVQLIVES;;GET # OF LIVES GENDSHO;;<0!! L>;;ADD COLOR 3 PSCOLIN;;SHOW IT! 8A(-A6Ap"!% ($^^216,104,10}4,104,133,203,104,104,133,204,169,0,133,205,6,204,38,205,6,204,38,205,6,204,38__205,165,204,24,101,88,133,206,165,205,101},89,133,207,6,204,38,205,6,204,38,205,165,204,24dd101,206,133,206,165,205,101,207,133,207,165,206,24,101,203,133,206,141,}240,6,165,207,105,0,133aa207,141,241,6,104,133,213,104,133,212,104,104,141,236,6,206,236,6,104,141,239,6,104,141,238VV}6,169,0,141,237,6,169,0,141,235,6,172,237,6,177,212,16,5,206,235,6,41,127,201,32XX176,5,24,105,64,16,7,201,96,176,3,56,2}33,32,133,204,169,0,133,205,133,208,6,204,38]]205,6,204,38,205,6,204,38,205,165,205,24,109,244,2,133,205,164,208,177,204,}77,235,6,172bb237,6,145,206,230,208,165,208,201,8,240,13,165,206,24,105,40,133,206,144,227,230,207,208,223ZZ238,237,6},206,236,6,48,26,173,240,6,24,109,238,6,133,206,141,240,6,173,241,6,109,239%%6,133,207,141,241,6,76,106,6,96 D2:G8}CHAR.BAS6,48,26,173,240,6,24,109,238,6,133,206,141,240,6,173,241,6,109,239%%6,133,207,141,241,6,76,106,6,96 D2:G8 100 REM ****************************110 REM * GR. 8 CHARACTER DEMO *120 REM * *130 REM * } BY TOM HUDSON *140 REM * *150 REM * ANALOG COMPUTING *160 REM ******************** }********170 GOSUB 4000:REM *** SET IT UP ***180 GRAPHICS 8:SETCOLOR 2,0,0190 DIM A$(20)200 REM 210 REM LET'S DO A HORIZO }NTAL LINE!220 REM 230 X=12:Y=0240 A$="HORIZONTAL LINE"250 TILT=0260 GOSUB 700270 REM 280 REM DOUBLE SPACING290 REM 3 }00 X=6:Y=12310 A$="DOUBLE SPACING"320 TILT=1330 GOSUB 700340 REM 350 REM NOW A VERTICAL LINE360 REM 370 X=4:Y=40380 A }$="VERTICAL LINE"390 TILT=319400 GOSUB 700410 REM 420 REM HOW ABOUT INVERTED VERTICAL?430 REM 440 X=8:Y=128450 A$="UPS }IDE DOWN"460 TILT=65215470 GOSUB 700480 REM 490 REM NOW SOME NORMAL DIAGONALS500 REM 510 X=12:Y=24520 A$="TILT = " }530 FOR TILT=40 TO 320 STEP 40540 A$(8)=STR$(TILT)550 GOSUB 700560 Y=Y+8570 NEXT TILT580 REM 590 REM AND SOME REVERSE D }IAGONALS!600 REM 610 X=25:Y=152620 A$="TILT = "630 FOR T2=40 TO 280 STEP 40640 TILT=65536-T2:REM *** REVERSE! ***6 }50 A$(8)=STR$(TILT)660 GOSUB 700670 Y=Y-8680 NEXT T2690 END 700 REM 710 REM NOW PLOT THE TEXT!720 REM 730 A=USR(1536, }X,Y,ADR(A$),LEN(A$),TILT):RETURN 670 Y=Y-8680 NEXT T2690 END 700 REM 710 REM NOW PLOT THE TEXT!720 REM 730 A=USR(1536, "0110 ; GRAPHICS 8 CHARACTER GENERATOR0120 ;0130 ; BY TOM HUDSON0140 ;0150 ; ANALOG COMPUTING0160 ;0170 XPOS = $CB };CHAR. X SAVE0180 LO = $CC ;2-BYTE...0190 HI = $CD ;POINTER0200 DESTLO = $CE ;DESTINATION...0210 DESTHI }= $CF ;POINTER0220 COPCNT = $D0 ;BYTE COPY COUNT0230 COPIX = $D1 ;COPY INDEX0240 CHADLO = $D4 ;CHARACTER...0}250 CHADHI = $D5 ;DATA POINTER0260 SAVMSC = $58 ;SCREEN ADDRESS0270 CHBAS = $02F4 ;CHARACTER SET0280 ;0290 ; LOCA}TE ROUTINE ON PAGE 60300 ;0310 *= $06000320 SHONUM CLD ;NO DECIMAL MODE!0330 PLA ;DISCARD0340 }PLA ;DISCARD HI0350 PLA ;PULL X POSITION0360 STA XPOS0370 PLA ;DISCARD0380 PLA } ;PULL Y POSITION0390 STA LO ;SET UP...0400 LDA #0 ;2-BYTE...0410 STA HI ;ADDRESS POINTER}0420 ASL LO ;*20430 ROL HI0440 ASL LO ;*40450 ROL HI0460 ASL LO ;*80470 ROL HI04}80 LDA LO ;NOW ADD ADDRESS0490 CLC ;OF START OF0500 ADC SAVMSC ;SCREEN0510 STA DESTLO0520 } LDA HI0530 ADC SAVMSC+10540 STA DESTHI0550 ASL LO ;*160560 ROL HI0570 ASL LO ;*320580 } ROL HI0590 LDA LO ;NOW ADD...0600 CLC ;PREVIOUS RESULT0610 ADC DESTLO ;TO GET0620 STA D}ESTLO ;SCREEN + Y*400630 LDA HI ;(1ST BYTE OF0640 ADC DESTHI ;DESIRED LINE)0650 STA DESTHI0660 LDA} DESTLO ;NOW ADD X POS0670 CLC ;FOR PLOT BYTE!0680 ADC XPOS0690 STA DESTLO0700 STA LOSAVE0710 } LDA DESTHI0720 ADC #00730 STA DESTHI0740 STA HISAVE0750 PLA ;PULL...0760 STA CHADHI ;STR}ING ADDRESS0770 PLA ;AND SAVE IT0780 STA CHADLO ;ON PAGE 00790 PLA ;DISCARD0800 PLA } ;PULL & SAVE...0810 STA LENGTH ;STRING LENGTH0820 DEC LENGTH ;MAKE 1 LESS!0830 PLA ;PULL & SAVE.}..0840 STA ADDFCH ;ADD FACTOR0850 PLA 0860 STA ADDFCL0870 LDA #0 ;ZERO OUT...0880 STA CHRNUM };CHARACTER #0890 CLOOP LDA #0 ;RESET INVERSE0900 STA INVERSE0910 LDY CHRNUM ;GET CHAR INDEX0920 LDA (CHAD}LO),Y ;GET CHAR#0930 BPL NOINV ;NOT INVERSE0940 DEC INVERSE ;SET INVERSE FLAG0950 AND #$7F ;MAKE NOT-INVE}RSE0960 NOINV CMP #32 ;CHAR < 32?0970 BCS NOTL32 ;NO, CHECK MORE0980 CLC ;ADJUST NUMBER0990 ADC #6}4 ;UP BY 641000 BPL GOTSCR1010 NOTL32 CMP #96 ;CHAR < 96?1020 BCS GOTSCR ;NO, IT'S OK1030 SEC ;}ADJUST NUMBER1040 SBC #32 ;DOWN 321050 GOTSCR STA LO ;AND CALC...1060 LDA #0 ;CHSET INDEX1070 STA }HI1080 STA COPCNT1090 ASL LO ;*21100 ROL HI1110 ASL LO ;*41120 ROL HI1130 ASL LO } ;*81140 ROL HI1150 LDA HI ;NOW ADD CHSET1160 CLC ;BASE ADDR1170 ADC CHBAS ;(CAN BE ANYWHE}RE)1180 STA HI1190 COPNUM LDY COPCNT ;GET COPY COUNT1200 LDA (LO),Y ;AND CHAR BYTE1210 EOR INVERSE ;INVERSE }IF REQ'D1220 LDY CHRNUM ;GET SCRN OFFSET1230 STA (DESTLO),Y ;PUT ON SCREEN!1240 INC COPCNT ;NEXT COPY BYTE1}250 LDA COPCNT ;COPY DONE?1260 CMP #8 ;(8 BYTES COPIED)1270 BEQ NXTCHR ;YES!1280 LDA DESTLO ;NO, A}DD 40...1290 CLC ;TO POINT TO...1300 ADC #40 ;NEXT GR.8...1310 STA DESTLO ;SCAN LINE1320 BCC} COPNUM1330 INC DESTHI1340 BNE COPNUM1350 NXTCHR INC CHRNUM ;NEXT CHARACTER1360 DEC LENGTH ;MORE CHARACTERS?}1370 BMI FINISH ;NO!1380 LDA LOSAVE ;OK, RESTORE...1390 CLC ;SCREEN POINTER1400 ADC ADDFCL ;WI}TH VERTICAL/1410 STA DESTLO ;HORIZONTAL ADD1420 STA LOSAVE1430 LDA HISAVE1440 ADC ADDFCH1450 STA DE}STHI1460 STA HISAVE1470 JMP CLOOP ;AND DO NEXT ONE!1480 FINISH RTS ;ADIOS!1490 ;1500 ; MISCELLANEOUS WORK} AREAS1510 ;1520 INVERSE *= *+1 ;INVERSE VIDEO FLAG1530 LENGTH *= *+1 ;STRING LENGTH1540 CHRNUM *= *+1 ;CHARACTER #}1550 ADDFCL *= *+1 ;LINE ADD FACTOR1560 ADDFCH *= *+11570 LOSAVE *= *+1 ;ADDRESS...1580 HISAVE *= *+1 ;HOLD AREA159}0 .END *= *+1 ;LINE ADD FACTOR1560 ADDFCH *= *+11570 LOSAVE *= *+1 ;ADDRESS...1580 HISAVE *= *+1 ;HOLD AREA159 E11SLPERSAPRIACRGSTCDMDMAPAIMSRNNNNNNN50N52N55N60N200N700N30N1016NN1N930NN310N10}N710NNTDWWAICDELWEETIRSSCTTYFCTDFFFPSUNDFFADDFUNCHEVENOSE}@@ @ @ @ @ @@} !}"#$%&'()*+,-./01}23456789:;<=>?@A}BCDEFGHIJKLMd]];@,;@7},;@,;@,;@8,;@W,;@W,;@,iGG9@P,9@,9@,9@,9@},9@,nI9@,<6.%*************************************I9@,o6-6-@'6-@}36-@?6-@K6-AW6-A c6-APo6-A{6-A 6-App?6-A6-Be}'6-@36-@?6-Aq36-@6-A1'6-A36-Aqr6-@6-@y6.PE}RSONAL APPEARANCE/ -68,-68,-&68,-/68,- 68,- 6-@66-@ 6- B} #Au  #Av AR $ #Aw , 2-@  )2,$,YY5,243,5,}243,5,217,5,193,5,243,5,193,8,217,2,0,5,243,5,243,5,217,5,193,10,243,10,255-__5,243,5,243,5,217,5,193,5,182,5,193,5,217,5,}243,5,255,5,162,5,182,5,217,10,243,10,243,255.""AU#$0-"2-$ )2- 774,2}43,4,243,4,217,4,193,4,243,4,193,6,217,2,0,2559912,193,6,204,6,193,2,184,2,0,6,184,4,193,12,184,255OO4,121,4,121,4,12}1,4,162,4,144,4,144,8,162,4,96,4,96,4,108,4,108,8,121,255QQ6,243,6,217,8,193,8,193,8,243,6,217,6,193,6,182,6,193,6,182,6,}144,8,162,255QQ4,121,4,144,6,182,6,182,3,182,3,162,3,144,3,136,6,121,6,121,6,121,8,144,255666,243,4,193,12,162,12,162},6,182,6,193,16,217,255^^6,121,2,121,6,108,2,108,4,96,2,81,2,96,4,121,2,0,2,81,6,121,2,121,6,108,2,108,8,96,8,121??2,}0,6,121,2,121,6,108,2,108,4,96,2,81,2,96,4,121,24,0,255((2,72,8,0,4,108,2,91,8,96,8,121,255::8,121,8,121,4,136,4,144,}8,144,4,153,4,144,12,144,255""4,204,4,204,4,204,12,243,255!!4,121,4,162,4,193,4,243,255!!4,243,4,193,4,162,4,121,}255 - $(: $$& -) "+ "68,-- .$06-P:H:,$%,$X:}-@ (:("-NO.ATLAN. -MAS/DIX -RESOURCES],,($-INDUS BLT -SUNBELT -WEEK REPORTb,,(#-FARM BELT -CASCAD}ES -END ORDERSq9 AdAU9@@K:r F:Ad,"AUA&s5)@6 }-&@H#) 5 A%t "#Ax vIIAA A0A@APA`AA }6.1-$6.2-$6. 3-$6. 4-$6. 5- }$6. 6-$% 6-6-6-!6-@%  6-6-6-6- + 6-6-@!6- }@'6-+ % 6-6-@!6-!6-% 16-@ 6-@0!6--6-@1 $% 6-6-@@ }6-!6-% $+00-$(#A% ( WEEK NUMBER: #A0%+$, 6-}(*******************( -"0 -(-()-@0(}%8%,"-@%(WON&8%,"-@&(LOST 6-%  ( 6( }:8,6( :$8,( :$8, 8,"( T U !+AR0}!6-^ /6-P:@ $H:,%,/6-P:@$H:,%,h F -(  -%/(  BALLOT 7-%F( r }H -%( "-%1( SENATOR 9-%H( PLAYER | 1 -%( "6-%."@ 1$ -} )!@ -%%#(X- A)  -%%(X A) >>NH,13,1,RI,12,2,ME,12,5,VT,11,6,MA,42,8,NY,129,8,CT,}24,9 --IN,39,2,PA,87,5,NJ,51,8,OH,78,9,MI,63,9 MMND,12,2,M0,36,2,WI,36,2,SD,12,5,IO,27,6,IL,78,7,KS,21,7,MN,30,8,NB,15,}9H 55NC,39,4,KY,27,4,DE,10,5,VA,36,6,WV,21,6,DC,11,6I TN,33,7,MD,30,7,SC,24,9 UUFL,42,2,AZ,15,3,GA,36,4,LA,30,4,MS,2}1,4,TX,75,5,OK,24,5,AL,30,6,AR,18,8,NM,12,8>>CA,120,3,WA,27,3,OR,18,3,HW,12,4,WY,10,5,MT,12,6,UT,12,8%%NV,11,8,CO,18,}9,ID,12,9,AK,10,9) 6-6-#!-@P)" 8,"6-% 8,"6-% !AA}!A) ) A AX?+0@#0@?( resource options Z AR]}&( WEEK NUMBER: &( q t ( v ( a w$( b$( x} ( cy( d( { ( e| ( f ( }}( g%( (%( YOUR CHOICE?' AdAU'K: F:Ad,"AU}ApD/ )6-&@d/ )!ApB " AP ApP +@#Ax 99Ar}AvAsAxAuA3+003(current media status. ( .( }: $100000 ( BUDGET -8 8,! A%(8( $8, ((}(( ENTER REGION NUMBER (-)  )! )%( MEDIA BUDGET FOR REGION)+!C #(OVER $ }9 MILLION' +  B*! !68,-8,%6-&!6-%  3+003( coordinator s!}tatus !, ( ,(A COORD COSTS $7500 %( COORDS*& - A%-%&(,% "}8, -@%%( .-@%(8, /-@@( 0*-@*(TOT COORDS#} AVAIL:1-@( 2J-@6(CURRENT COORD COST A($J( 90(,( $}ENTER REGION TO BE CHANGED (-)0;:)( HOW MANY COORDS IN REGION-:(>:A%,>) 68,-6--%6%}-%8,) ?H6-@6& -(68,-, 86-@6>6-H Ar@6-$AuC Ar4+0&}04( debate status  (  1 !-)( debate scheduled- 1 : -(SEE'}KING DEBATE%-:( COSTS $100000@-@ %(GETTING DEBATE+-@( COSTS $350000(((( ENTER E(}S TO SEEK DEBATE 0Y - A`&!6-)6-&B- #6-&B6-%B# LH+)}0@#0@?(fund raising status H( Q ( V " AuP[I -"(A FUNDR*}AISER WILL.-@ I(COST: $50000 \(((( ENTER ES TO RAISE FUNDS`0Y e# 4Y6-+}6-&B# ~" -"(already scheduled   3+003(canvassing/mass mail  6,}-( 44() CANVAS/MAIL COSTS $200000 PER REGION ( -6-%8, ("Av( -} AMOUNT ( -8 8,! A%(8( $8, )%( ENTER REGION NUMBER (-.}))  )! 68,-B 68,-#6-&8,6-%8,# Av &(all regions covered" & x/}<+003(personal appearance <( }  6-( ( -6-%8, (AxU* 0}-*(  WILL COST $200000*&( ENTER REGION NUMBER (-)*  )! , 68,-6-&B (61}-%B , / -'( ALREADY SCHEDULED + / @+0 APC( weekly report #D (2}  E+ ( #+(F-@P"G "( H J6 -( 3}: 6( : L(: 813 Y( :^( PLAYER c( S4}ENATOR h"( UNDECIDED "( r! "!(debate this week| & +@&( final spending5}( (  -( ( ( (6} ( ( 6-6A BP`"J@67@ <@W,.%hu7}rrah!! you have a first ballot win!J A"I?67@ <@W,.$the senator has enough votes to win!I A(#/+8}00/( !!7#2 -(are you2( ready for primary<#RH(? ENTER ES TO GO TO THE9} PRIMARIES THIS WEEKR AQA#F# BK#0YAP# "6-BU#! "!6-P:$:}H:,%,$BV#3 B6-%&B-6-%&B36-# -# 8, 6-& A#8, B ;}A#%6-+8,'BP,%6-%P:',%# #3 "6-&B %6-%B -6-%36-T$Y$ 6--<}6-%8, ^$ "6-%N%# 6-6- S% #%6-6- X%# #A36-@ 6-# ]% #%=}6-6- b% #A56-6- g% #%6-@6- l% 6-&6-%% -%8,"*8,>}6-%%!8,"*8,!@ !6-%%8,"*8, 6-&%8,"*8,"6-%%8,"*8,"6-%%?}8,"*8,"6-&%8,"*8,"6-&% /&#-@P4& A`9& "<&!@u6-@@}u>& "*68,- AC& "68,-H& R&8,"*"6-%\& 6-%a& -f&' 68,-68A},-68,-'68,-k& z&26-P:$H:,&,%@@(6-P:',%26-&&& A' +@0$'B -B}-@#--(1 B-@6)' -(  .'; -%( +-7C}(V1.0; L' B '6-P:$H:,%@,' 6-'' 6-6-6-6-!6-'6-)6-@@) 6-&D}&) AP A*' +@0 A)##' + 6-+((67<@,. + +@E}+3( % A`3 B+ 6-%!B+#B% + 6-6-%(+))67@ F}<@3,.ENDORSEMENT: *+"/+67@4<@W,.4+8 -(7<@,$6.7,267B:,%,.86.5+ ASG}6+ 6-%>+!"@W6. ! BC+ B`+SAVE THE MOON SOCIETY ,N0+CARWASH OWNERS ASSOC ,N0+H}PRISONERS RIGHTS COMM ,N0+HIGHTECH WORKERS UNION,N0+VIGILANTE BROTHERHOOD,N0, #B, -" ,I} 6-%-67@ <@W,. - 6--8 -(7<@,$6.7,267B:,%,.86.&- AS(- 6-%-J}-"@WB0- "6 2- BP<-BA-P 6-F67@ <@W,.%primary debate was held lastK} week P B0F-K -$(.#AP2 8-K(&BK- #AR 6. $P-L}OOSOVIETS DENY THEIR MOONBASE IS ARMED,CAMPAIGN AIDE IS CITED IN BRIBE SCAMQ-##FOOD RIOTS ROCK GREAT BRITAINR-NNTITAN SPM}ACE PROBE FINDS LIFE FORMS,EIGHTY INJURED IN NEW YORK WATER RIOTS-OOSINO-FRENCH FOOD TREATY SIGNED TODAY,JURY GIVES YOUTH DN}EATH IN N.H. TRIALT-((JAPAN ADMITS TO LUNAR MISSILE BASEU-((NUKE WEAPONS BANNED FROM MARS BASE. +@0.O}-@P68,- ." -"(COPYRIGHT 1983 BY.= - ( AND&-=(.% -P}%(PRESS TO BEGIN.: -!(PRESS FOR'-:( SKILL LEVEL/, -( beginner 6-,6Q}-C /-@P / 6-F:B2y, "B @ / "+@ B /   B 7/@ "*"-R}$( beginner*6-66-C @ B 7/C "*"-'( intermediate-6-96-CC B 7/C "*S}"-'( expert -6-96-CC B 7D2:DRKHORSE.BASediate-6-96-CC B 7/C "*Q 3E:}DISK OPERATING SYSTEM II VERSION 2.0SCOPYRIGHT 1980 ATARIA. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDGE J. DU}UPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRESSF. LOCK FV}ILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES9!&x#!7&p))'&X*./)L''-؆莟W}R'S  vW DEHHI 1A#! @ ~0ɛ8A0.) ȅ 1 1iX}il ! 1L NO SUCH ITEMSELECT ITEM OR FOR MENU! 0 .{z:*{}.|~ 1 0 0Y}JB 18L^%|DLl%DIRECTORY--SEARCH SPEC,LIST FILE? # 0 0 n&|D! 1L NOT A DISK FILEZ}N !B 1L " 1 !BDED:}:1BJ|DE 1DEBH[}I 1 h0ߢ 0.  0?詛 1 ~0YЛ 1 "L<" "L \} BL1TYPE "Y" TO DELETE...DELETE FILE SPECCOPY--FROM, TO?OPTION NOT ALLOWED COPYING---DN:]}# 0|D .L$A#B#C#JB|DE 1BHIDD#E 1D#0: B^} 1L B#C#C#B# B 1N#$0SYS1}:e#D# d# D# .d#ȽD# d# 𩛙d#X# 1,A#_}PdD#ELO- A.BJdD#E 1 1HH 0hh|DL^%1}:e# Lt% e#dD#EL%`} 1 0 . .0% 1L WILD CARDS NOT ALLOWED IN DESTINATION 0 A.|K@C